:first-child, :last-child, :nth-child()ì ê°ì CSS ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ ë§ì€í°íì¬ ì¹ íë¡ì ížë¥Œ ìí ê³ êž ëì ì€íìŒë§ì 구ííìžì. ìì ì íì ê°ííê³ ìê°ì ìŒë¡ ë§€ë ¥ì ìž ì¬ì©ì ìží°íìŽì€ë¥Œ ìœê² ë§ëìžì.
CSS ìì¹ êž°ë° ê°ì íŽëì€: ëì ì€íìŒë§ì ìí ê³ êž ìì ì í
CSS ìì¹ êž°ë° ê°ì íŽëì€ë 묞ì ížëЬ ëŽ ìì¹ì ë°ëŒ ìì륌 íê²í íê³ ì€íìŒì ì§ì íë ê°ë ¥í ë°©ë²ì ì ê³µí©ëë€. ìŽ ì íì륌 ì¬ì©í멎 ììì 첫 ë²ì§ž, ë§ì§ë§ ëë në²ì§ž ììì í¹ì ì€íìŒì ì ì©íì¬ ëì ìŽê³ ìê°ì ìŒë¡ ë§€ë ¥ì ìž ì¹ ìží°íìŽì€ë¥Œ ë§ë€ ì ììµëë€. ìŽ ê°ìŽëììë ìì¹ êž°ë° ê°ì íŽëì€ì ìžê³ë¥Œ í구íë©°, CSS êž°ì ì í¥ììí€êž° ìí ì€ì ìì ì ì¬ì© ì¬ë¡ë¥Œ ì ê³µí©ëë€.
CSS ê°ì íŽëì€ ìŽíŽíêž°
ìì¹ êž°ë° ê°ì íŽëì€ì ëíŽ ìì볎Ʞ ì ì CSSìì ê°ì íŽëì€ê° 묎ììžì§ ê°ëší ìŽíŽë³Žê² ìµëë€. ê°ì íŽëì€ë ì íë ììì í¹ë³í ìí륌 ì§ì íêž° ìíŽ ì íìì ì¶ê°ëë í€ìëì
ëë€. ìŽë¥Œ íµíŽ ììì ìŽëŠ, ìì± ëë ìœí
ìž ê° ìë ìì¹, ìí ëë êž°í ëì êž°ì€ì ë°ëŒ ììì ì€íìŒì ì§ì í ì ììµëë€. ì륌 ë€ìŽ, :hover
ê°ì íŽëì€ë ì¬ì©ìê° ìì ìì ë§ì°ì€ë¥Œ ì¬ë žì ë ì€íìŒì ì ì©í©ëë€.
ìì¹ êž°ë° ê°ì íŽëì€ ìê°
ìì¹ êž°ë° ê°ì íŽëì€ë ë¶ëªš ìì ëŽììì ìì¹ì ë°ëŒ ìì륌 íê²í íë ê°ì íŽëì€ì íì ì§í©ì ëë€. ìŽë 목ë¡, í ëë ììì ìì¹ì ë°ëŒ ë€ë¥ž ì€íìŒì ì ì©íë €ë 몚ë ìœí ìž êµ¬ì¡°ì ë§€ì° ì ì©í©ëë€.
죌ì ìì¹ êž°ë° ê°ì íŽëì€
1. :first-child
:first-child
ê°ì íŽëì€ë ë¶ëªš ìì ëŽì 첫 ë²ì§ž ìì ìì륌 ì íí©ëë€. ìŽë 목ë¡ì 첫 ë²ì§ž í목, íì 첫 ë²ì§ž í ëë ìŽêž° ìì륌 ê°ì¡°íê³ ì¶ì 몚ë ìë늬ì€ì í¹ì ì€íìŒì ì ì©íë ë° ì ì©í©ëë€.
ìì : ëŽë¹ê²ìŽì ë©ëŽì 첫 ë²ì§ž ëª©ë¡ í목 ì€íìŒë§íêž°.
nav ul li:first-child {
font-weight: bold;
color: #007bff;
}
ìŽ CSS ìœëë <nav>
ììì <ul>
ëŽ ì²« ë²ì§ž ëª©ë¡ í목ì êµµê² ë§ë€ê³ íëììŒë¡ ë³ê²œí©ëë€.
ì€ì©ì ìž ì ì©: ì ììê±°ë ì¹ì¬ìŽížë¥Œ ììíŽ ë³Žìžì. :first-child
륌 ì¬ì©íì¬ ì¶ì² ì í ì¹ì
ì 첫 ë²ì§ž ì íì ìê°ì ìŒë¡ ê°ì¡°í ì ììµëë€.
2. :last-child
ë°ëë¡ :last-child
ê°ì íŽëì€ë ë¶ëªš ìì ëŽì ë§ì§ë§ ìì ìì륌 ì íí©ëë€. ìŽë ë§ì§ë§ í목ì ì ìží 몚ë í목ì í
ë늬ë ì¬ë°±ì ì¶ê°íê±°ë, ì°ìë ìì ì€ ë§ì§ë§ ììì í¹ì ì€íìŒì ì ì©íë ë° ì벜í©ëë€.
ìì : 목ë¡ì ë§ì§ë§ í목ìì íëš í ë늬 ì ê±°íêž°.
ul li {
border-bottom: 1px solid #ccc;
}
ul li:last-child {
border-bottom: none;
}
ìŽ CSS ìœëë ë§ì§ë§ ëª©ë¡ í목ì ì ìží 몚ë í목ì íëš í ë늬륌 ì¶ê°íì¬, íëšì ë¶íìí í ë늬 ììŽ ê¹ëí ìê°ì 구ë¶ì ë§ëëë€.
ì€ì©ì ìž ì ì©: ì°ëœì² ìììì :last-child
륌 ì¬ì©íì¬ ì ì¶ ë²íŒ ì ë§ì§ë§ ì
ë ¥ íëì íëš ì¬ë°±ì ì ê±°í ì ììµëë€.
3. :nth-child(n)
:nth-child(n)
ê°ì íŽëì€ë ë¶ëªš ìì ëŽìì ì«ì ìì¹ì ë°ëŒ ìì륌 íê²í
í ì ìë ë ë€ì¬ë€ë¥í ì íìì
ëë€. n
ì ì«ì, í€ìë(even
ëë odd
), ëë ììì ëíë
ëë€.
ìì : íì íì/ì§ì í ì€íìŒë§íêž°.
table tr:nth-child(even) {
background-color: #f2f2f2;
}
ìŽ CSS ìœëë íì 몚ë ì§ì ë²ì§ž íì ë°ì íì 배겜ì ì ì©íì¬ ê°ë ì±ì í¥ììíµëë€.
ìì : ìž ë²ì§ž ìì ì ííêž°.
div p:nth-child(3) {
color: green;
}
ìŽ CSS ìœëë <div>
ìì ëŽì ìž ë²ì§ž ëšëœì ë
¹ììŒë¡ ë§ëëë€.
ìì : ììì ì¬ì©íì¬ ìž ë²ì§ž ììë§ë€ ì ííêž°.
ul li:nth-child(3n) {
font-style: italic;
}
ìŽ CSS ìœëë ìž ë²ì§ž ëª©ë¡ í목ë§ë€ ìŽí€ëŠ ì€íìŒì ì ì©í©ëë€.
ì€ì©ì ìž ì ì©: ëŽì€ ì¹ì¬ìŽížìì :nth-child(n)
ì ì¬ì©íì¬ ìž ë²ì§ž êž°ì¬ë§ë€ ë€ë¥Žê² ì€íìŒì ì§ì íì¬ ìê°ì ë€ìì±ì ë§ë€ê³ í¹ì ìœí
ìž ë¥Œ ê°ì¡°í ì ììµëë€.
4. :nth-of-type(n)
:nth-of-type(n)
ê°ì íŽëì€ë :nth-child(n)
곌 ì ì¬íì§ë§, ë¶ëªš ëŽìì ììì ì íì êž°ì€ìŒë¡ íê²í
í©ëë€. ìŠ, ëìŒí ì íì ììë§ ê³ì°ì í¬íší©ëë€.
ìì : div ëŽì ë ë²ì§ž ëšëœ ì€íìŒë§íêž°.
div p:nth-of-type(2) {
font-size: 1.2em;
}
ìŽ CSS ìœëë <div>
ëŽì ë ë²ì§ž ëšëœ ììì êžêŒŽ í¬êž°ë¥Œ ìŠê°ìíµëë€. ê³ì° ì div ëŽì ë€ë¥ž ì íì ììë 묎ìí©ëë€.
ì€ì©ì ìž ì ì©: ëžë¡ê·ž ê²ì묌ìì ëšëœìŽë ì 목곌 ê°ì ë€ë¥ž ììì 졎ì¬ì ìêŽììŽ :nth-of-type(n)
ì ì¬ì©íì¬ ë ë²ì§ž ìŽë¯žì§ë§ë€ ë€ë¥Žê² ì€íìŒì ì§ì í ì ììµëë€.
5. :first-of-type
:first-of-type
ê°ì íŽëì€ë ë¶ëªš ëŽìì íŽë¹ ì íì 첫 ë²ì§ž ìì륌 ì íí©ëë€. 컚í
ìŽë ëŽì 첫 ë²ì§ž ëšëœ, ìŽë¯žì§ ëë êž°í í¹ì ìì ì íì ì€íìŒì ì§ì íë ë° ì ì©í©ëë€.
ìì : êž°ì¬ ëŽì 첫 ë²ì§ž ìŽë¯žì§ ì€íìŒë§íêž°.
article img:first-of-type {
float: left;
margin-right: 10px;
}
ìŽ CSS ìœëë <article>
ììì 첫 ë²ì§ž ìŽë¯žì§ë¥Œ ìŒìªœìŒë¡ íë¡í
íê³ ì€ë¥žìªœì ì¬ë°±ì ì¶ê°í©ëë€.
ì€ì©ì ìž ì ì©: ì í ì€ëª
íìŽì§ìì :first-of-type
ì ì¬ì©íì¬ ì£Œì ì í ìŽë¯žì§ë¥Œ ëì ëê² íìí ì ììµëë€.
6. :last-of-type
:last-of-type
ê°ì íŽëì€ë ë¶ëªš ëŽìì íŽë¹ ì íì ë§ì§ë§ ìì륌 ì íí©ëë€. ìŽë :first-of-type
ì ë°ë ê°ë
ìŒë¡, 컚í
ìŽë ëŽ í¹ì ì íì ë§ì§ë§ ììì ì€íìŒì ì ì©íë ë° ì¬ì©ë©ëë€.
ìì : ì¹ì ì ë§ì§ë§ ëšëœ ì€íìŒë§íêž°.
section p:last-of-type {
margin-bottom: 0;
}
ìŽ CSS ìœëë <section>
ëŽì ë§ì§ë§ ëšëœ ìììì íëš ì¬ë°±ì ì ê±°í©ëë€.
ì€ì©ì ìž ì ì©: ëžë¡ê·ž ê²ì묌ìì :last-of-type
ì ì¬ì©íì¬ ë§ë¬ŽëЬ ëšëœì íëš ì¬ë°±ì ì ê±°íì¬ ìê°ì ìŒë¡ ë ê¹ëíê² ë맺ì ì ììµëë€.
ì€ì ì¬ì© ì¬ë¡ ë° ìì
ìì¹ êž°ë° ê°ì íŽëì€ê° ì€ì ìë늬ì€ìì ìŽë»ê² ì¬ì©ë ì ìëì§ ë³Žì¬ì£Œë ë ë³µì¡íê³ ì€ì©ì ìž ìì 륌 ìŽíŽë³Žê² ìµëë€.
1. ëŽë¹ê²ìŽì ë©ëŽ ì€íìŒë§
ëŽë¹ê²ìŽì ë©ëŽë ì¹ì¬ìŽížì ìŒë°ì ìž ìììŽë©°, ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ ì¬ì©íì¬ ëªšìì í¥ììí¬ ì ììµëë€.
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#services">Services</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</nav>
nav ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
}
nav ul li {
margin-right: 20px;
}
nav ul li:first-child {
font-weight: bold;
}
nav ul li:last-child {
margin-right: 0;
}
ìŽ ìœëë ëŽë¹ê²ìŽì ë©ëŽë¥Œ ìíìŒë¡ ë§ë€ê³ , êžëšžëЬ êž°ížë¥Œ ì ê±°íë©°, 첫 ë²ì§ž í목ì êµµê² ë§ëëë€. ëí ë§ì§ë§ í목ì ì€ë¥žìªœ ì¬ë°±ì ì ê±°íì¬ ì ì í ê°ê²©ì 볎ì¥í©ëë€.
2. ì í ëª©ë¡ ì€íìŒë§
ì ììê±°ë ì¹ì¬ìŽížë ì¢ ì¢ ì íì 귞늬ëë ëª©ë¡ íììŒë¡ íìí©ëë€. ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ ì¬ì©íì¬ ìê°ì ìŒë¡ ë§€ë ¥ì ìž ì í 목ë¡ì ë§ë€ ì ììµëë€.
<div class="product-list">
<div class="product"><img src="product1.jpg" alt="Product 1"><p>Product 1 Description</p></div>
<div class="product"><img src="product2.jpg" alt="Product 2"><p>Product 2 Description</p></div>
<div class="product"><img src="product3.jpg" alt="Product 3"><p>Product 3 Description</p></div>
<div class="product"><img src="product4.jpg" alt="Product 4"><p>Product 4 Description</p></div>
</div>
.product-list {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}
.product {
border: 1px solid #ccc;
padding: 10px;
}
.product:nth-child(odd) {
background-color: #f9f9f9;
}
ìŽ ìœëë ì íì 2ìŽ ê·žëŠ¬ëë¡ íìíê³ ê° ì íì í ë늬륌 ì¶ê°í©ëë€. ëí íì ë²ì§ž ì íë§ë€ ë°ì íì 배겜ì ì ì©íì¬ ìê°ì 구ë¶ì í¥ììíµëë€.
3. í ì€íìŒë§
íë ìŒë°ì ìŒë¡ í íì ë°ìŽí°ë¥Œ íìíë ë° ì¬ì©ë©ëë€. ìì¹ êž°ë° ê°ì íŽëì€ë íì ê°ë ì±ê³Œ 몚ìì í¥ììí¬ ì ììµëë€.
<table>
<thead>
<tr>
<th>Name</th>
<th>Age</th>
<th>Country</th>
</tr>
</thead>
<tbody>
<tr>
<td>John Doe</td>
<td>30</td>
<td>USA</td>
</tr>
<tr>
<td>Jane Smith</td>
<td>25</td>
<td>Canada</td>
</tr>
<tr>
<td>David Lee</td>
<td>40</td>
<td>UK</td>
</tr>
</tbody>
</table>
table {
width: 100%;
border-collapse: collapse;
}
th, td {
border: 1px solid #ccc;
padding: 8px;
text-align: left;
}
thead {
background-color: #f2f2f2;
}
tbody tr:nth-child(even) {
background-color: #f9f9f9;
}
ìŽ ìœëë í ë늬, ì쪜 ì¬ë°±, ê·žëŠ¬ê³ ë²ê°ì ëíëë í ìììŒë¡ í ì€íìŒì ì§ì íì¬ ê°ë ì±ì í¥ììíµëë€.
ë€ë¥ž ì íìì ìì¹ êž°ë° ê°ì íŽëì€ ê²°í©íêž°
ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ ë€ë¥ž CSS ì íìì ê²°í©íì¬ íšì¬ ë 구첎ì ìŽê³ ê°ë ¥í ì€íìŒë§ ê·ì¹ì ë§ë€ ì ììµëë€. ì륌 ë€ìŽ, ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ íŽëì€ ì íìë ìì± ì íìì ê²°í©í ì ììµëë€.
ìì : í¹ì íŽëì€ë¥Œ ê°ì§ 첫 ë²ì§ž í목 ì€íìŒë§íêž°.
ul li.highlight:first-child {
color: red;
}
ìŽ CSS ìœëë "highlight" íŽëì€ë¥Œ ê°ì§ 첫 ë²ì§ž ëª©ë¡ í목ìë§ ë¹šê°ìì ì ì©í©ëë€.
ëžëŒì°ì ížíì±
ìì¹ êž°ë° ê°ì íŽëì€ë Chrome, Firefox, Safari, Edge, Opera륌 í¬íší ìµì ì¹ ëžëŒì°ì ìì ë늬 ì§ìë©ëë€. ê·žë¬ë ìŒêŽë ë ëë§ì 볎ì¥íêž° ìíŽ íì ë€ë¥ž ëžëŒì°ì ìì CSS ìœë륌 í ì€ížíë ê²ìŽ ì¢ìµëë€.
ëªšë² ì¬ë¡ ë° ê³ ë € ì¬í
- ìë§ší± HTML ì¬ì©: HTML êµ¬ì¡°ê° ë ŒëŠ¬ì ìŽê³ ìë§ší±íì§ íìžíìžì. ìŽë ê² í멎 ìì¹ êž°ë° ê°ì íŽëì€ë¡ ìì륌 ë ìœê² íê²í í ì ììµëë€.
- 곌ëí êµ¬ì²Žì± íŒíêž°: ì íì륌 ê²°í©íë ê²ì ê°ë ¥í ì ìì§ë§, ì ì§íêž° ìŽë €ìŽ ì§ëì¹ê² 구첎ì ìž ê·ì¹ì ë§ë€ì§ ë§ìžì.
- ë€ë¥ž ëžëŒì°ì ìì í ì€íž: ížíì±ê³Œ ìŒêŽë ë ëë§ì 볎ì¥íêž° ìíŽ íì ë€ë¥ž ëžëŒì°ì ìì CSS ìœë륌 í ì€ížíìžì.
- ì±ë¥ ê³ ë €: ìì¹ êž°ë° ê°ì íŽëì€ë ìŒë°ì ìŒë¡ íšìšì ìŽì§ë§, ëê·ëªš ë°ìŽí°ì ì ë³µì¡í ì íì륌 ì¬ì©í멎 ì±ë¥ì ìí¥ì ë¯žì¹ ì ììŒë¯ë¡ íŒíìžì.
- 죌ì ì¬ì©: CSS ìœëì 죌ìì ì¶ê°íì¬ ì íìì 목ì ì ì€ëª íê³ ë€ë¥ž ì¬ëë€(ëë 믞ëì ìì )ìŽ ìŽíŽíêž° ìœê² ë§ëìžì.
ê²°ë¡
CSS ìì¹ êž°ë° ê°ì íŽëì€ë ì¹ ê°ë°ììê² ê·ì€í ë구ë¡, ê³ êž ìì ì í곌 ëì ì€íìŒë§ì ê°ë¥íê² í©ëë€. ìŽë¬í ì íì륌 ë§ì€í°í멎 ë€ìí ìœí ìž êµ¬ì¡°ì ì ìíë ìê°ì ìŒë¡ ë§€ë ¥ì ìŽê³ ì¬ì©ì ì¹íì ìž ì¹ ìží°íìŽì€ë¥Œ ë§ë€ ì ììµëë€. ìŽ ê°ìŽëìì ì ê³µë ìì 륌 ì€ííê³ ì¹ íë¡ì ížìì ìì¹ êž°ë° ê°ì íŽëì€ì 묎íí ê°ë¥ì±ì íìíŽ ë³Žìžì.
ìŽ í¬êŽì ìž ê°ìŽëë CSS ìì¹ êž°ë° ê°ì íŽëì€ë¥Œ ìŽíŽíê³ íì©íë ë° ê²¬ê³ í êž°ìŽë¥Œ ì ê³µí©ëë€. ê³ì ë°°ì°ê³ ì€íí멎ì ì¹ ê°ë° êž°ì ì í¥ììí€ê³ íìí ì¬ì©ì 겜íì ë§ëë ë ì°œìì ìž ë°©ë²ì ë°ê²¬íê² ë ê²ì ëë€.
ì¶ê° íìµ ìë£
CSS ìì¹ êž°ë° ê°ì íŽëì€ì ëí ìŽíŽë¥Œ ê¹ê² íë €ë©Ž ë€ì ìë£ë¥Œ ìŽíŽë³Žë ê²ì ê³ ë €íŽ ë³Žìžì:
ìŠê±°ìŽ ì€íìŒë§ ëìžì!